home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / Libraries / DCLAP 6d / dclap6d / network / ncsasock / a_ftp.h next >
Text File  |  1996-07-05  |  3KB  |  94 lines

  1. /*
  2.  * Copyright (c) 1983, 1989 Regents of the University of California.
  3.  * All rights reserved.
  4.  *
  5.  * Redistribution and use in source and binary forms are permitted
  6.  * provided that: (1) source distributions retain this entire copyright
  7.  * notice and comment, and (2) distributions including binaries display
  8.  * the following acknowledgement:  ``This product includes software
  9.  * developed by the University of California, Berkeley and its contributors''
  10.  * in the documentation or other materials provided with the distribution
  11.  * and in all advertising materials mentioning features or use of this
  12.  * software. Neither the name of the University nor the names of its
  13.  * contributors may be used to endorse or promote products derived
  14.  * from this software without specific prior written permission.
  15.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
  16.  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  17.  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  18.  *
  19.  *    @(#)ftp.h    5.5 (Berkeley) 6/1/90
  20.  */
  21.  
  22. /*
  23.  * Definitions for FTP
  24.  * See RFC-765
  25.  */
  26.  
  27. /*
  28.  * Reply codes.
  29.  */
  30. #define PRELIM        1    /* positive preliminary */
  31. #define COMPLETE    2    /* positive completion */
  32. #define CONTINUE    3    /* positive intermediate */
  33. #define TRANSIENT    4    /* transient negative completion */
  34. #define ERROR        5    /* permanent negative completion */
  35.  
  36. /*
  37.  * Type codes
  38.  */
  39. #define    TYPE_A        1    /* ASCII */
  40. #define    TYPE_E        2    /* EBCDIC */
  41. #define    TYPE_I        3    /* image */
  42. #define    TYPE_L        4    /* local byte size */
  43.  
  44. #ifdef FTP_NAMES
  45. char *typenames[] =  {"0", "ASCII", "EBCDIC", "Image", "Local" };
  46. #endif
  47.  
  48. /*
  49.  * Form codes
  50.  */
  51. #define    FORM_N        1    /* non-print */
  52. #define    FORM_T        2    /* telnet format effectors */
  53. #define    FORM_C        3    /* carriage control (ASA) */
  54. #ifdef FTP_NAMES
  55. char *formnames[] =  {"0", "Nonprint", "Telnet", "Carriage-control" };
  56. #endif
  57.  
  58. /*
  59.  * Structure codes
  60.  */
  61. #define    STRU_F        1    /* file (no record structure) */
  62. #define    STRU_R        2    /* record structure */
  63. #define    STRU_P        3    /* page structure */
  64. #ifdef FTP_NAMES
  65. char *strunames[] =  {"0", "File", "Record", "Page" };
  66. #endif
  67.  
  68. /*
  69.  * Mode types
  70.  */
  71. #define    MODE_S        1    /* stream */
  72. #define    MODE_B        2    /* block */
  73. #define    MODE_C        3    /* compressed */
  74. #ifdef FTP_NAMES
  75. char *modenames[] =  {"0", "Stream", "Block", "Compressed" };
  76. #endif
  77.  
  78. /*
  79.  * Record Tokens
  80.  */
  81. #define    REC_ESC        '\377'    /* Record-mode Escape */
  82. #define    REC_EOR        '\001'    /* Record-mode End-of-Record */
  83. #define REC_EOF        '\002'    /* Record-mode End-of-File */
  84.  
  85. /*
  86.  * Block Header
  87.  */
  88. #define    BLK_EOR        0x80    /* Block is End-of-Record */
  89. #define    BLK_EOF        0x40    /* Block is End-of-File */
  90. #define BLK_ERRORS    0x20    /* Block is suspected of containing errors */
  91. #define    BLK_RESTART    0x10    /* Block is Restart Marker */
  92.  
  93. #define    BLK_BYTECOUNT    2    /* Bytes in this block */
  94.